perm filename PAFD.SAI[HAK,HPM] blob sn#430376 filedate 1979-04-06 generic text, type T, neo UTF8
BEGIN "TEST"
DEFINE NK=5;
INTEGER ARRAY BLOCK[0:NK*1024];
INTEGER ARRAY PNT[0:2];
INTEGER JOB,I,J,T,LINE, WD, PASS;
STRING ACCT,ANS,ACCTO;

PRINT("ACCT:"); ACCTO←INCHWL;
FOR WD←0,1 DO
   BEGIN
   LINE←PTYGET;
   ACCT←(IF WD=1 THEN ACCTO ELSE "PAS/HPM");
   PTOSTR(LINE,"L "&ACCT&'15&'12);
   ANS←"   ";
   DO
      BEGIN
      T←PTCHRW(LINE);
      IF WD=1 THEN OUTSTR(T);
      ANS←ANS&T;
      END
   UNTIL ANS[∞ TO ∞]="="∨EQU(ANS[∞-2 TO ∞],'15&'12&".");

   IF ANS[∞ TO ∞]≠"=" THEN BEGIN PRINT("none at all"); CALL(0,"EXIT"); END
   ELSE
      BEGIN
      WHILE ANS[1 TO 4]≠"Job " DO ANS←ANS[2 TO ∞];
      ANS←ANS[5 TO ∞]; JOB←INTSCAN(ANS,T);

      FOR J←0 STEP 1 UNTIL NK-1 DO
	 BEGIN
	 PNT[0]←JOB;
	 PNT[1]←((-1024) ASH 18) LOR (J*1024);
	 PNT[2]←LOCATION(BLOCK[J*1024]);
	 CALL(LOCATION(PNT[0]),"JOBRD");
	 END;

      FOR I←0 STEP 1 UNTIL NK*1024 DO
	 WHILE (BLOCK[I] LAND '770000000000)=0 ∧ BLOCK[I]≠0 DO
             BLOCK[I]←BLOCK[I] LSH 6;

      IF WD=1 THEN PRINT(CV6STR(BLOCK[PASS]),'15&'12)
      ELSE
	 BEGIN
	 FOR I←0 STEP 1 UNTIL NK*1024-1 DO
	    BEGIN
	    STRING Q;
	    IF BLOCK[I]≠0 THEN
	      BEGIN
	      Q←CV6STR(BLOCK[I]);
	      IF EQU(Q,"PASSWD") THEN PASS←I;
	      END;
	    END;
	 END;
      END;
   PTYREL(LINE);
   END;
END "TEST";